const fs = require('fs');
fs.readFile('./1.txt', (err, data) => {
  if (err) {
    // console.log(err) 
  } else {
    // console.log(data.toString())
  }
})
let buff = Buffer.from('王');

 //  'r'打开只读文件 该文件必须存在，'r+'打开可读写文件必须存在 'w'打开只写文件，若文件存在长度清0.文件不存在则创建 'w+'打开可读可写
 // 'a'以附加的形式打开只写文件，如文件不存在则创建写入的数据会加到文件末尾  'a+' 跟a一样 多了可读可写
function write () {
  fs.open('./1.txt', 'a', 0o666, (err, fd) => {
    fs.write(fd, buff, 0, 3, null, (err) => {
      fs.fsync(fd, () => {
        fs.close(fd, () => {
          console.log('关闭成功')
        })
      })
    })
  })
}
fs.truncate('./1.txt', 3, () => {
  console.log(`截断字节！！是字节！！！中文一个三字节不然会乱码`);
})
// console.log((156).toString(2));

// console.log(parseInt("11", 2));


// console.log(parseInt('s0s156'));
// console.log(parseInt('0x156'));
// fs.readdir('./a', (err, files) => {
//   console.log(files)
//   files.forEach(file => {
//     fs.stat()
//   })
// })

// 删除文件fs.unlink
// 删除文件夹fs.rmdir 这一定是一个空目录
const path = require('path')
// 同步递归删除目录
function rmdirSnyc (dir) {
  let files = fs.readdirSync(dir)
  files.forEach(file => {
    let child = fs.statSync(path.join(dir, file))
    if (child.isDirectory()) {
      rmdirSnyc(path.join(dir, file))
    } else {
      fs.unlinkSync(path.join(dir, file))
    }
  })
  fs.rmdirSync(dir)
}

// rmdirSnyc('./a');
// 异步递归删除目录
